<?php
/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of ajaxClass
 *
 * @author Diseño-2
 */
class ajaxClass {
    
   
    
    /*
     *  Agregar los datos de uno o muchos bancos  a una
     *  -Agencia
     *  -Clientes
     *  -proveedores
     */
    public function agregarInformacionBancaria($nombreSession,$arrayParametros)
    {

        $nombrebanco = $arrayParametros['nombreBanco'];
        $cuentabanco = $arrayParametros['cuentaBanco'];
        $moneda      = $arrayParametros['moneda'];
        $isCombox    = $arrayParametros['isCombox'];
        $idCombox    = -1;
        if($isCombox)
        {
            $servicioUtil = new utilClass();
            /*En este caso el $nombrebanco contendria el Id del banco
             * ya que se esta que envia la informacion del <select> */            
            $bancoBean = $servicioUtil->getBanco($nombrebanco);
            if(count($bancoBean)>0)
            {
                $nombrebanco = $bancoBean[0]->getNombre();
                $idCombox    = $bancoBean[0]->getId();
            }
        }
        
        
        if($nombrebanco!="" && $cuentabanco!="")
        {

             $list = sfContext::getInstance()->getUser()->getAttribute($nombreSession,null);
             $id   = 1;
             $repetido = false;
             if($list!=null)
             {
                 $result   = array_reverse($list);
                 $id       = $result[0]['id']+1;
             }
             if($repetido==false)
             {
                 $newArray = array("id"=>$id,"nombreBanco"=>$nombrebanco,"cuentaBanco"=>$cuentabanco,"moneda"=>$moneda,"isCombox"=>$isCombox,"idCombox"=>$idCombox);
                 $list[]   = $newArray;
             }
             sfContext::getInstance()->getUser()->setAttribute($nombreSession,$list);
        }
    }
    
    /*Este metodo se utiliza solo la primera vez*/
    public function agregarInformacionBancariaEdit($nombreSession,$arrayParametros)
    {
        
        $nombrebanco = $arrayParametros['nombreBanco'];
        $cuentabanco = $arrayParametros['cuentaBanco'];        
        $moneda      = $arrayParametros['moneda'];
        $id          = $arrayParametros['id'];
        $isCombox          = $arrayParametros['isCombox'];
        $idCombox          = $arrayParametros['idCombox'];

        if($nombrebanco!="" && $cuentabanco!="")
        {

             $list = sfContext::getInstance()->getUser()->getAttribute($nombreSession,null);            
             $newArray = array("id"=>$id,"nombreBanco"=>$nombrebanco,"cuentaBanco"=>$cuentabanco,"moneda"=>$moneda,"isCombox"=>$isCombox,"idCombox"=>$idCombox);
             $list[]   = $newArray;
             sfContext::getInstance()->getUser()->setAttribute($nombreSession,$list);
        }
    }
    public function agregarCuentaUsuarioEdit($nombreSession, $arrayParametros){

        $nombre=$arrayParametros['nombre'];
        $correo=$arrayParametros['correo'];
        $password=$arrayParametros['password'];
        $id          = $arrayParametros['id'];

        if($nombre!="" && $correo!="" && $password!=""){

            $list = sfContext::getInstance()->getUser()->getAttribute($nombreSession,null);
            $newArray = array("id"=>$id,"nombre"=>$nombre,"correo"=>$correo,"password"=>$password);
            $list[]   = $newArray;
             sfContext::getInstance()->getUser()->setAttribute($nombreSession,$list);

        }




    }
    
    
    public function editarInformacionBancaria($nombreSession,$arrayParametros)
    {
        $nombrebanco = $arrayParametros['nombreBanco'];
        $cuentabanco = $arrayParametros['cuentaBanco'];
        $moneda      = $arrayParametros['moneda'];
        
        $isCombox    = $arrayParametros['isCombox'];
        $idCombox    = -1;
        if($isCombox)
        {
            $servicioUtil = new utilClass();
            /*En este caso el $nombrebanco contendria el Id del banco
             * ya que se esta que envia la informacion del <select> */            
            $bancoBean = $servicioUtil->getBanco($nombrebanco);
            if(count($bancoBean)>0)
            {
                $nombrebanco = $bancoBean[0]->getNombre();
                $idCombox    = $bancoBean[0]->getId();
            }
        }
        
        
        $list           =  sfContext::getInstance()->getUser()->getAttribute($nombreSession,null);
        $clave          = -1; 
        if($list!=null)
        {           
              while ($row = current($list))
              {
                 if($row['id']==$arrayParametros["idDetalle"])
                 {
                    $array = $row;                  
                    $clave = key($list);
                    break;
                 }
                 next($list);
              }

              if($clave!=-1)
              {                     
                  $list[$clave]  =  array("id"=>$array['id'],"nombreBanco"=>$nombrebanco,"cuentaBanco"=>$cuentabanco,"moneda"=>$moneda,"isCombox"=>$array['isCombox'],"idCombox"=>$idCombox);
                  sfContext::getInstance()->getUser()->setAttribute($nombreSession,$list);
                  return true;
              }             
        }
        return false;
    }
    
    /* Este functio sirve para alamcenar las los id eliminados y asi al momento de grabar los datos
     * poder eliminarlos de la base de datos 
     */
    public function elminarInformacionBancariaModuloEditar($nombreSession,$id)
    {
        $list = sfContext::getInstance()->getUser()->getAttribute($nombreSession,null);
        $newArray = array("id"=>$id);
        $list[]   = $newArray;
        sfContext::getInstance()->getUser()->setAttribute($nombreSession,$list);
        return true;
    }
    
    public function elminarInformacionBancaria($nombreSession,$id)
    {
       
        $list = sfContext::getInstance()->getUser()->getAttribute($nombreSession,null);
        $clave          = -1; 
       if($list!=null)
       {         
            while ($row = current($list))
            {
                if ($row['id']==$id)
                {
                    $clave =  key($list);
                    break;
                }              
                next($list);
            }                
            if($clave!=-1)
            {
                unset($list[$clave]);
                if(count($list)==0)
                {
                    sfContext::getInstance()->getUser()->setAttribute($nombreSession,null);     
                }
                else
                {
                   sfContext::getInstance()->getUser()->setAttribute($nombreSession,$list);    
                }                
               return true;  
            }                     
       }
       return false;
    }
    




}
?>
